Avoid infinite recursion when removing a grab
authorMatthias Clasen <mclasen@redhat.com>
Tue, 13 Mar 2012 02:01:18 +0000 (22:01 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Tue, 13 Mar 2012 02:01:18 +0000 (22:01 -0400)
https://bugzilla.gnome.org/show_bug.cgi?id=671819

gtk/gtkrange.c

index e384aaa741b94d757f77e6fd33e6225093566069..c7a2b52665ee5fff1a863fa8d48595c740157ba2 100644 (file)
@@ -2365,9 +2365,10 @@ range_grab_remove (GtkRange *range)
 
   if (priv->grab_device)
     {
-      gtk_device_grab_remove (GTK_WIDGET (range),
-                              priv->grab_device);
+      GdkDevice *grab_device = priv->grab_device;
+
       priv->grab_device = NULL;
+      gtk_device_grab_remove (GTK_WIDGET (range), grab_device);
     }
 
   location = priv->grab_location;